package socketmvc.core.filter;

import socketmvc.core.context.IContext;

public interface IFilter {
    void doFilter(IContext context, Object other, IFilterChain filterChain);

    /**
     * filter 匹配的路径
     * @return 路径描述符号，例如 /* 、/**等
     */
    String path();

    /**
     * filter执行排序
     * filter会按照该函数返回的数值由小到大排序执行
     * 所以order越大则优先级越小
     * 最大值 32767,最小值 -32768
     * @return 排序数值
     */
    short order();
}
